/*
 * SolicitarInforme.java
 *
 * Created on Oct 27, 2008, 5:34:16 PM
 */
 
package wasolicitudesfiec.AperturaPostgrado;

import com.sun.rave.web.ui.appbase.AbstractPageBean;
import com.sun.rave.web.ui.component.Button;
import com.sun.rave.web.ui.component.HiddenField;
import com.sun.rave.web.ui.component.TextArea;
import com.sun.rave.web.ui.component.TextField;
import javax.faces.FacesException;
import javax.faces.application.FacesMessage;
import wasolicitudesfiec.AperturaPostgrado.Fragments.FragmentDetalleSolicitarApertura;
import wasolicitudesfiec.SessionBean1;
import wasolicitudesfiec.RequestBean1;
import wasolicitudesfiec.ApplicationBean1;
import wasolicitudesfiec.Menu;
import wasolicitudesfiec.general.MensajeException;
import wasolicitudesfiec.logicacontrol.SolicitarAperturaPostgrado.CTRL_RevisarSolicitud;
import wasolicitudesfiec.plantillas.PanelNavegacion2;

/**
 * <p>Page bean that corresponds to a similarly named JSP page.  This
 * class contains component definitions (and initialization code) for
 * all components that you have defined on this page, as well as
 * lifecycle methods and event handlers where you may add behavior
 * to respond to incoming events.</p>
 *
 * @author kabad
 */
public class RevisarSolicitud extends AbstractPageBean {
    // <editor-fold defaultstate="collapsed" desc="Managed Component Definition">

    /**
     * <p>Automatically managed component initialization.  <strong>WARNING:</strong>
     * This method is automatically generated, so any user-specified code inserted
     * here is subject to being replaced.</p>
     */
    private void _init() throws Exception {
    }
    private Button btnBuscarProfesor2 = new Button();

    public Button getBtnBuscarProfesor2() {
        return btnBuscarProfesor2;
    }

    public void setBtnBuscarProfesor2(Button b) {
        this.btnBuscarProfesor2 = b;
    }
    private Button btnBuscarProfesor3 = new Button();

    public Button getBtnBuscarProfesor3() {
        return btnBuscarProfesor3;
    }

    public void setBtnBuscarProfesor3(Button b) {
        this.btnBuscarProfesor3 = b;
    }
    private Button btnSolicitarInforme = new Button();

    public Button getBtnSolicitarInforme() {
        return btnSolicitarInforme;
    }

    public void setBtnSolicitarInforme(Button b) {
        this.btnSolicitarInforme = b;
    }
    private Button btnBuscarProfesor1 = new Button();

    public Button getBtnBuscarProfesor1() {
        return btnBuscarProfesor1;
    }

    public void setBtnBuscarProfesor1(Button b) {
        this.btnBuscarProfesor1 = b;
    }
    private HiddenField hfUsuarioEvaluador1 = new HiddenField();

    public HiddenField getHfUsuarioEvaluador1() {
        return hfUsuarioEvaluador1;
    }

    public void setHfUsuarioEvaluador1(HiddenField hf) {
        this.hfUsuarioEvaluador1 = hf;
    }
    private HiddenField hfUsuarioEvaluador2 = new HiddenField();

    public HiddenField getHfUsuarioEvaluador2() {
        return hfUsuarioEvaluador2;
    }

    public void setHfUsuarioEvaluador2(HiddenField hf) {
        this.hfUsuarioEvaluador2 = hf;
    }
    private HiddenField hfUsuarioEvaluador3 = new HiddenField();

    public HiddenField getHfUsuarioEvaluador3() {
        return hfUsuarioEvaluador3;
    }

    public void setHfUsuarioEvaluador3(HiddenField hf) {
        this.hfUsuarioEvaluador3 = hf;
    }

    // </editor-fold>
 private CTRL_RevisarSolicitud cTRL_RevisarSolicitud ;
// public PanelNavegacion2 getPanelNavegacion2() {
//        return (PanelNavegacion2) getBean("plantillas$PanelNavegacion2");
//    }
    private TextArea txtaComentarioDecano = new TextArea();

    public TextArea getTxtaComentarioDecano() {
        return txtaComentarioDecano;
    }

    public void setTxtaComentarioDecano(TextArea ta) {
        this.txtaComentarioDecano = ta;
    }
    private TextField profesor_id_lbl = new TextField();

    public TextField getProfesor_id_lbl() {
        return profesor_id_lbl;
    }

    public void setProfesor_id_lbl(TextField tf) {
        this.profesor_id_lbl = tf;
    }
    /**
     * <p>Construct a new Page bean instance.</p>
     */
    public RevisarSolicitud() {
             cTRL_RevisarSolicitud = new CTRL_RevisarSolicitud(this, this.getFacesContext());
    }

  @Override
    public void init() {
       try{
           super.init();
        
        // <editor-fold defaultstate="collapsed" desc="Managed Component Initialization">
        // Initialize automatically managed components
        // *Note* - this logic should NOT be modified
        try {
            _init();
        } catch (Exception e) {
            log("SolicitarInforme Initialization Failure", e);
            throw e instanceof FacesException ? (FacesException) e: new FacesException(e);
        }
        
        // </editor-fold>
       cTRL_RevisarSolicitud.inicializar();
            
        } catch (MensajeException ex) {
            cTRL_RevisarSolicitud.addCookieMensaje(ex.getMessage(),null);
cTRL_RevisarSolicitud.redireccionar("/WA_SolicitudesFIEC/faces/general/Mensaje.jsp");
        }}

    @Override
    public void preprocess() {
    }

    @Override
    public void prerender() {
    }

    @Override
    public void destroy() {
    }

    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return reference to the scoped data bean
     */
    protected SessionBean1 getSessionBean1() {
        return (SessionBean1) getBean("SessionBean1");
    }

    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return reference to the scoped data bean
     */
    protected RequestBean1 getRequestBean1() {
        return (RequestBean1) getBean("RequestBean1");
    }

    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return reference to the scoped data bean
     */
    protected ApplicationBean1 getApplicationBean1() {
        return (ApplicationBean1) getBean("ApplicationBean1");
    }

    public Menu getMenu() {
        return (Menu) getBean("SolicitudesFIEC$Menu");
    }
     public FragmentDetalleSolicitarApertura getDetalleSolicitarApertura() {
        return (FragmentDetalleSolicitarApertura) getBean("AperturaPostgrado$Fragments$FragmentDetalleSolicitarApertura");
    }

    public String btnSolicitarInforme_action() {
        FacesMessage message;
        try {

           if( cTRL_RevisarSolicitud.solicitarInforme()){
            cTRL_RevisarSolicitud.addCookieMensaje( "La solicitud de apertura de postgrado ha sido enviada a los Profesores Evaluadores para solicitar su informe.",
           "Los evaluadores han sido notificado vía correo electrónico." );
            return "mensaje";
           } else {
                return null;
            }       
        } catch (MensajeException ex) {
            message = new FacesMessage(FacesMessage.SEVERITY_ERROR, ex.getMessage(), ex.getMessage());
            getFacesContext().addMessage(null, message);
            return null;
        }
    }

    public String btnDevolver_action() {
        FacesMessage message;
        try {
            if(cTRL_RevisarSolicitud.devolver()){
            cTRL_RevisarSolicitud.addCookieMensaje("La solicitud de apertura de postgrado ha sido devuelta al Solicitante.",
                    "El Solicitante ha sido notificado vía correo electrónico."  );
            return "mensaje";
             } else {
                return null;
            }
        } catch (MensajeException ex) {
            message = new FacesMessage(FacesMessage.SEVERITY_ERROR, ex.getMessage(), ex.getMessage());
            getFacesContext().addMessage(null, message);
            return null;
        }

    }

    public String btnRechazar_action() {
      FacesMessage message;
        try {
           if( cTRL_RevisarSolicitud.rechazar()){
            cTRL_RevisarSolicitud.addCookieMensaje("La solicitud de apertura de postgrado ha sido rechazada.",
              "El Solicitante ha sido notificado vía correo electrónico.");
           return "mensaje";
             } else {
                return null;
            }
        } catch (MensajeException ex) {
            message = new FacesMessage(FacesMessage.SEVERITY_ERROR, ex.getMessage(), ex.getMessage());
            getFacesContext().addMessage(null, message);
            return null;
        }

    }

    public String btnEnviaraConsejo_action() {
       FacesMessage message;
        try {
            if(cTRL_RevisarSolicitud.enviaraConsejo()){
            cTRL_RevisarSolicitud.addCookieMensaje("La solicitud de apertura de postgrado está en espera de la resolución del Consejo Directivo.",null);
             return "mensaje";
             } else {
                return null;
            }
        } catch (MensajeException ex) {
            message = new FacesMessage(FacesMessage.SEVERITY_ERROR, ex.getMessage(), ex.getMessage());
            getFacesContext().addMessage(null, message);
            return null;
        }

    }

   
  
}

